package hotel.meituan.oversea.api.vo.overseaResponceVO.pojo;

import lombok.Data;

import java.util.List;

/**
 * @Description 境外酒店产品详细信息列表。
 * @Author Chen_l
 * @Date 2021/7/27 13:38
 */
@Data
public class OhAPIGoodsInfo {
    /**
     * 境外酒店ID。
     */
    private Long hotelId;
    /**
     * 产品ID。
     */
    private Long goodsId;
    /**
     * 产品名称。
     */
    private String goodsName;
    /**
     * 平均价格，单位为分。
     */
    private Integer averagePrice;
    /**
     * 产品类型
     * 1 上单产品
     * 2 直连产品
     */
    private Integer goodsSource;
    /**
     * 床型，外层数组是或的关系，内层是与的关系
     */
    private List<List<OhAPIBedType>> otaBeds;
    /**
     * 餐食信息
     */
    private OhAPIMealType mealType;
    /**
     * 物理房型ID
     */
    private Integer realRoomId;
    /**
     * 是否可取消。 [1]:不可取消 [2]:限时取消
     */
    private Integer refundable;
    /**
     * 取消政策 ，refundable=2时该字段不为空
     */
    private List<OhAPICPApply> cpApply;
    /**
     * 产品特殊说明，包括入住提示、收费服务、国籍限制等，建议展示给客人，部分包含html样式标签
     */
    private String checkPolicy;
    /**
     * 礼包信息。例如送机服务,租车服务等短小字段
     */
    private List<String> giftPackageList;
    /**
     * 最小住客年龄，-1表示不限制
     */
    private Integer minGuestAge;
    /**
     * 可抽烟信息
     * 0 吸烟房
     * 2 无烟房
     * 3 均可
     */
    private Integer smokingPreferences;
    /**
     * 无额外收费情况下的最大入住人数
     */
    private Integer quotedOccupancy;
    /**
     * 额外收费情况下的最大入住人数
     */
    private Integer rateOccupancy;
    /**
     * 产品价格信息列表。
     */
    private List<OhAPIDailyPrice> priceModelList;
    /**
     * 产品是否立即确认
     * 1 立即确认
     * 2 非立即确认
     */
    private Integer confirmType;
    /**
     * 产品的发票模式
     * 1 第三方开具发票
     * 2 美团开具发票
     * 6 其他（若产品发票模式为其他，建议重新请求接口）
     */
    private Integer invoiceMode;

    /**
     * 产品售卖规则
     */
    private List<SaleRule> saleScenario;
}
